import Mock from 'mockjs'
import qs from 'qs'

// mock配置
Mock.setup({
  // 随机延时500-1000毫秒
  timeout: '500-1000'
})
// 生成随机数据
// 单个数据
Mock.mock('@integer(0,7)')
// 对象数据
Mock.mock({
  id: '@id',
  name: '@ctitle(2,4)'
})
// 拦截请求
// 第一个参数：url - 使用正则去匹配
// 第二个参数：请求方式
// 第三个参数；生成数据的函数

Mock.mock(/\/my\/test/, 'get', () => {
  // 随机数据逻辑 目标：5条数据  [{id:'',name:''},...]
  const arr = []
  for (let i = 0; i < 5; i++) {
    // arr.push(Mock.mock('@id'))
    arr.push(
      Mock.mock({
        id: '@id',
        name: '@cname'
      })
    )
  }
  return { msg: '获取数据成功', result: arr }
})

// 模拟 - 我的收藏

Mock.mock(/\/member\/collect/, 'get', (config) => {
  const query = config.url.split('?')[1]
  const { page, pageSize } = qs.parse(query)
  const items = []
  for (let i = 0; i < pageSize; i++) {
    items.push(
      Mock.mock({
        id: '@id',
        name: '@ctitle(10,20)',
        desc: '@ctitle(4,10)',
        price: '@float(100,200,2,2)',
        // http://zhoushugang.gitee.io/erabbit-client-pc-static/uploads/clothes_goods_7.jpg
        picture: `http://zhoushugang.gitee.io/erabbit-client-pc-static/uploads/clothes_goods_${Mock.mock(
          '@integer(1,8)'
        )}.jpg`
      })
    )
  }
  return {
    msg: '获取收藏商品成功',
    result: {
      counts: 35,
      pageSize: +pageSize,
      page: +page,
      items
    }
  }
})
